package com.dcyao.musicserve.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.dcyao.musicserve.common.R;
import com.dcyao.musicserve.domain.Collect;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author admin
* @description 针对表【collect(收集表)】的数据库操作Service
*/
public interface CollectService extends IService<Collect> {
    /**
     * 新增收藏
     * @param collect
     * @return
     */
    R insertCollect(Collect collect);

    /**
     * 删除收藏
     * @param id
     * @return
     */
    R deleteCollect(Integer id);


    /**
     * 批量删除
     * @param ids
     * @return
     */
    R deleteBathIds(List<Integer> ids);

    /**
     * 查询所有收藏
     * @return
     */
    R allCollect();

    /**
     * 查询某个用户的收藏列表
     * @param consumerId
     * @return
     */
    R collectOfConsumerId(Integer consumerId);

    /**
     * 查询某个用户是否已经收藏某个乐谱
     * @param consumerId,staffId
     * @return
     */
    boolean existConsumer(@Param("consumerId") Integer consumerId,@Param("staffId") Integer staffId);

    /**
     * 判断用户是否收藏该乐谱
     * @param consumerId
     * @return
     */
    R isCollectOfStaff(Integer consumerId,Integer staffId);

}
